package com.xiangshizhineng.tianzhangzhi.app.model.response;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.xiangshizhineng.tianzhangzhi.app.model.entity.File;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@JsonInclude(JsonInclude.Include.NON_NULL)
@Data
public class EventResponseT {

    @ApiModelProperty(value = "事件实体")
    private EventResponse eventResponse;
    /**
     * 重写，防止自增，此时存取的为事件表的id
     */
    @ApiModelProperty(value = "事件id")
    private Long id;
    /**
     * 重写更新时间 用于mybatisplus去除
     */
    @TableField(exist = false)
    private Date updateTime;
    /**
     * 图斑标识码
     */
    @ApiModelProperty(value = "图斑标识码")
    @NotBlank(message = "图斑标识码为空")
    private String tbbsm;
    /**
     * 巡查标识码
     */
    @ApiModelProperty(value = "巡查标识码")
    @NotBlank(message = "巡查标识码为空")
    private String xcbsm;
    /**
     * 上传接口上传后返回的路径
     */
    @ApiModelProperty(value = "上传接口上传后返回的路径")
    private String fjmc;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date createTime;
    /**
     * 巡查人员
     */
    @ApiModelProperty(value = "巡查人员")
    private String xcry;
    /**
     * X坐标（天地图纬度坐标）
     */
    @ApiModelProperty(value = "X坐标（天地图纬度坐标）")
    private BigDecimal x;
    /**
     * Y坐标（天地图经度坐标）
     */
    @ApiModelProperty(value = "Y坐标（天地图经度坐标）")
    private BigDecimal y;
    /**
     * 方位角（数值）
     */
    @ApiModelProperty(value = "方位角（数值）")
//    @NotNull(message = "方位角为空")
    private BigDecimal azimuth;
    /**
     * 距图斑距离（单位：米）
     */
    @ApiModelProperty(value = "距图斑距离（单位：米）")
//    @NotNull(message = "图斑距离为空")
    private BigDecimal distance;
    /**
     * 偏航角（数值）
     */
    @ApiModelProperty(value = "偏航角（数值）")
    private BigDecimal yaw;
    /**
     * 翻滚角（数值）
     */
    @ApiModelProperty(value = "翻滚角（数值）")
    private BigDecimal roll;
    /**
     * 俯仰角（数值）
     */
    @ApiModelProperty(value = "俯仰角（数值）")
    private BigDecimal pitch;

    @ApiModelProperty(value = "附件表")
    private List<File> fileList;
}
